VLC media player

VLC media player
VLC Icon.svg
Vlc 1.0.6 running on ubuntu Linux showing big buck bunny.png
VLC media player 1.0.6 running on Ubuntu
Developer(s) VideoLAN Project
Initial release 1 February 2001
Written in C, C++, Objective-C using Qt
Operating system Cross-platform
Available in Multilingual
Type Media player
License GNU General Public License v2 or later
Website VideoLAN.org

VLC media player is a free and open source media player and multimedia framework written by the VideoLAN project.

VLC is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, VCDs, and various streaming protocols. It is able to stream over networks and to transcode multimedia files and save them into various formats. VLC used to stand for VideoLAN Client, but since VLC is no longer simply a client, that initialism no longer applies.[1][2]

It is one of the most platform-independent media players available, with versions for Microsoft Windows, Mac OS X, GNU, Linux, BeOS, and BSD.[3]

The default distribution of VLC includes a large number of free decoding and encoding libraries; on the Windows platform, this greatly reduces the need for finding/calibrating proprietary plugins. Many of VLC's codecs are provided by the libavcodec library from the FFmpeg project, but it uses mainly its own muxer and demuxers. It also gained distinction as the first player to support playback of encrypted DVDs on Linux by using the libdvdcss DVD decryption library.

Contents

History

Originally the VideoLAN project started as an academic project in 1996. It was intended to consist of a client and server to stream videos across a campus network. VLC was the client for the VideoLAN project, with VLC standing for VideoLan Client. Originally developed by students at the École Centrale Paris, it is now developed by contributors worldwide and is coordinated by the VideoLAN non-profit organization.

Rewritten from scratch in 1998, it was released under the GPL on 1 February 2001. The functionality of the server program, VideoLan Server (VLS), has mostly been subsumed into VLC and has been deprecated.[4] The project name was changed to VLC since there is no longer a client/server infrastructure.

The cone icon used in VLC is a reference to the traffic cones collected by Ecole Centrale's Networking Students' Association.[5] The cone icon design was changed from a hand drawn low resolution icon[6] to a higher resolution CGI rendered version in 2006, illustrated by Richard Øiestad.[7] The cone icon wears a Santa hat over the Christmas period.

Version 1.0.0 of VLC media player was released on July 7, 2009, culminating 13 years of development.[8]

Design principles

VLC, like most multimedia frameworks, has a very modular design which makes it easier to include modules/plugins for new file formats, codecs or streaming methods. VLC core creates its own graph of modules to fit into different situations. In VLC, almost everything is a module, like interfaces, video and audio outputs, controls, scalers, codecs, and audio and video filter modules.

VLC 1.0.0 has more than 380 modules.[9]

Interfaces

VLC with the wxWidgets interface, running on KDE

In VLC, interfaces are modules, which means that VLC's core can launch one, many, or no interfaces.

The default GUI is based on Qt 4 for Windows and Linux, Cocoa for Mac OS X, and Be API on BeOS; but all give a similar standard interface. The old default GUI was based on wx on Windows and Linux.[10]

VLC's Christmas Easter egg (title bar logo icon) in the Qt interface

VLC supports highly customizable skins through the skins2 interface, also supporting Winamp 2 and XMMS skins. The customizable skins feature can malfunction depending on which version is being used.

VLC with the ncurses interface, running on Mac OS X

For console users, VLC has a remote control interface and an ncurses interface. As VLC can act as a streaming server, rather than a media player, it can be useful to control it from a remote location and there are interfaces allowing this. The Remote Control Interface is a text-based interface for doing this.

There are also interfaces using telnet and HTTP (AJAX).

Control

In addition to these interfaces, it is possible to control VLC in different ways:

Features

VLC's right-click Menu on GNU/Linux (Kubuntu 10.04)

Use of VLC with other programs

API

libVLC
Developer(s) VideoLAN Project
Initial release 1 February 2001
Written in C
Operating system Cross-platform
Platform Native, .NET, Java, Python and Cocoa
Available in multilingual
Type Multimedia Library
License GNU General Public License
Website wiki.videolan.org/Libvlc (English)

There are several APIs that can connect to VLC and use its functionality:

Browser plugins

Applications which use the VLC plugin

Format support

Readable formats

VLC running under KDE

VLC can read several formats, depending on the operating system VLC is running on.[16]

Input 
UDP/RTP unicast or multicast, HTTP, FTP, MMS, RTSP, RTMP, DVDs, VCD, SVCD, CD Audio, DVB, Video acquisition (via V4l and DirectShow), RSS/Atom Feeds, and from files stored on the user's computer.
Container formats
3GP,[17] ASF, AVI, FLV, Matroska, Musical Instrument Digital Interface (.mid/.midi),[18] QuickTime, MP4, Ogg, OGM, WAV, MPEG-2 (ES, PS, TS, PVA, MP3), AIFF, Raw audio, Raw DV, MXF, VOB.
Video formats
Cinepak, Dirac, DV, H.263, H.264/MPEG-4 AVC, HuffYUV, Indeo 3,[19] MJPEG, MPEG-1, MPEG-2, MPEG-4 Part 2, RealVideo 3&4[20], Sorenson (thus enabling direct playback of the modified Sorenson H.263 encoded videos downloaded from YouTube), Theora, VC-1,[21] VP5,[21] VP6,[21], VP8, and some WMV.
Subtitles
DVD, SVCD, DVB, OGM, SubStation Alpha, SubRip, Advanced SubStation Alpha, MPEG-4 Timed Text, Text file, Vobsub, MPL2,[22] Teletext.[22]
Audio formats
[23] AAC, AC3, ALAC, AMR,[17] DTS, DV Audio, XM, FLAC, MACE, Mod, MP3, PLS, QDM2/QDMC, RealAudio,[24] Speex, Screamtracker 3/S3M, TTA, Vorbis, WavPack,[25] WMA (WMA 1/2, WMA 3 partially)[23].

Output formats for streaming/encoding

VLC can transcode into several formats depending on the operating system.

Container formats
ASF, AVI, FLV,[22] Fraps,[22] MP4, Ogg, Wav, MPEG-2 (ES, PS, TS, PVA, MP3), MPJPEG, FLAC, QuickTime, Matroska
Video formats
H.263, H.264/MPEG-4 AVC, MJPEG, MPEG-1, MPEG-2, MPEG-4 Part 2, VP5,[21] VP6,[21] Theora, DV
Audio formats
AAC, AC3, DV Audio, FLAC, MP3,[26] Speex, Vorbis
Streaming protocols
UDP, HTTP, RTP, RTSP, MMS, File

See also

References

  1. Jean-Baptiste Kempf (November 23, 2006). "VLC Name". Yet another blog for JBKempf. http://www.jbkempf.com/blog/post/2006/11/23/VLC-Name. Retrieved 2007-02-24. 
  2. VideoLAN Team. "Intellectual Properties". VideoLAN Wiki. http://wiki.videolan.org/Intellectual_Properties#Names_.2F_Trademark. Retrieved 2007-07-30. 
  3. "VLC playback Features". VideoLAN. http://www.videolan.org/vlc/features.php. Retrieved 2010-05-11. 
  4. "VideoLAN - The streaming solution". http://www.videolan.org/vlc/streaming.html. Retrieved 2009-03-08. 
  5. Jon Lech Johansen (June 23, 2005). "VLC cone". So sue me: Jon Lech Johansen’s blog. http://www.nanocrew.net/2005/06/23/vlc-cone/. Retrieved 2007-02-24. 
  6. "vlc48x48.png" (PNG). VideoLAN Project. http://git.videolan.org/?p=vlc.git;a=blob_plain;f=share/vlc48x48.png;hb=85e4b3a17d6a107a0f73be40c52c080354b3ddd0. Retrieved 2010-03-15. 
  7. "vlc48x48.png" (PNG). VideoLAN Project. http://git.videolan.org/?p=vlc.git;a=blob_plain;f=share/vlc48x48.png;hb=9ef388cc16e200fa0a4571f9b006c0d58e9ba115. Retrieved 2010-03-15. 
  8. "VLC 1.0 officially released after more than 10 years of work". http://arstechnica.com/open-source/news/2009/07/vlc-10-officially-released.ars. Retrieved 2009-07-07. 
  9. "VLC media player List of modules". VLC media player trac system. http://trac.videolan.org/vlc/browser/modules/LIST. 
  10. Jean-Baptiste Kempf (February 10, 2007). "Qt4 Interface". Yet another blog for JBKempf. http://www.jbkempf.com/blog/post/2007/02/10/Qt4-Interface. Retrieved 2007-03-07. 
  11. [1]
  12. Java binding Project
  13. Anderson, Dean; Lamberson, Jim (2007). "Using VideoLan VLC in DirectShow". An open source bridge from VLC to DirectShow. http://www.sensoray.com/support/videoLan.htm. Retrieved 2008-02-15. 
  14. Chapter 4. Advanced use of VLC
  15. Open Source Patches and Mirrored Packages - Google Code
  16. "VLC features list". VideoLAN Project. http://www.videolan.org/vlc/features.html. Retrieved 2007-02-24. 
  17. 17.0 17.1 To use AMR as audio codec, VLC and FFmpeg need to be compiled with AMR support. This is because the AMR license is not compatible with the VLC license.
  18. This feature needs sound fonts and might not work on every OS
  19. Indeo 4 and 5 codecs are not supported
  20. from 0.9.9 and over
  21. 21.0 21.1 21.2 21.3 21.4 This is from the 0.8.6 version.
  22. 22.0 22.1 22.2 22.3 This is present in 0.9.0 and newer version.
  23. 23.0 23.1 VideoLAN team. "VLC playback Features". http://www.videolan.org/vlc/features.php?cat=audio. Retrieved 2010-01-03. 
  24. Real Audio playback is provided through the FFmpeg library which only supports the Cook (RealAudio G2 / RealAudio 8) decoder at the moment.
  25. Currently only supported in mono and stereo, so no multichannel support.
  26. You need to compile VLC with mp3lame support

External links